package com.gccloud.design.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.gccloud.design.entity.InterfaceEntity;
import com.gccloud.starter.common.dto.SearchDTO;
import com.gccloud.starter.core.vo.PageVO;

/**
 * 实现功能【接口配置业务层】
 *
 * @author hu.hongdou
 * @date 2022/2/21 17:31
 */
public interface InterfaceQueryService extends IService<InterfaceEntity> {

    /**
     * 查询接口列表
     *
     * @param searchDTO 查询DTO
     * @return 分页对象
     */
    PageVO<InterfaceEntity> getInterfaceList(SearchDTO searchDTO);

    /**
     * 根据接口编码查询接口配置
     *
     * @param code 接口编码
     * @return 接口配置实体
     */
    InterfaceEntity getInterfaceByCode(String code);

    /**
     * 新增接口
     *
     * @param entity 接口配置实体
     * @return boolean
     */
    boolean saveInterfaceInfo(InterfaceEntity entity);

    /**
     * 更新接口
     *
     * @param entity 接口配置实体
     * @return boolean
     */
    boolean updateInterfaceInfo(InterfaceEntity entity);

    /**
     * 删除
     *
     * @param ioId 接口标识
     * @return boolean
     */
    boolean delInterface(Long ioId);

    /**
     * 保存测试入参
     *
     * @param comments 备注
     * @param ioId     接口标识
     * @return boolean
     */
    boolean saveInterfaceParam(String comments, String ioId);
}
